use serde::{Deserialize, Serialize};

#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct CallRecord {
    pub id: String,           // 记录ID
    pub target: String,       // 目标号码
    pub target_display: String, // 显示名称
    pub call_type: CallType,  // 通话类型
    pub status: CallStatus,   // 通话状态
    pub timestamp: i64,       // 时间戳（毫秒）
    pub duration: Option<u32>, // 通话时长（秒），None表示未接通
}

#[derive(Debug, Clone, Serialize, Deserialize)]
pub enum CallType {
    Outgoing, // 拨出
    Incoming, // 来电
    Missed,   // 未接
}

#[derive(Debug, Clone, Serialize, Deserialize)]
pub enum CallStatus {
    Connected,    // 已接通
    Failed,       // 失败
    Cancelled,    // 已取消
    NoAnswer,     // 无人接听
}


